{ struct sockaddr_un name; int sock; size_t size;
/* Create the socket. */
sock = socket (PF_UNIX, SOCK_DGRAM, 0); if (sock < 0) { perror ("socket"); exit (EXIT_FAILURE); }
/* Bind a name to the socket. */
name.sun_family = AF_FILE; strcpy (name.sun_path, filename);
/* The size of the address is the offset of the start of the filename, plus its length, plus one for the terminating null byte. */ size = (offsetof (struct sockaddr_un, sun_path) + strlen (name.sun_path) + 1);
if (bind (sock, (struct sockaddr *) &name, size) < 0) { perror ("bind"); exit (EXIT_FAILURE); }
return sock; }
This document was generated on January 16, 2023 using texi2html 5.0.